package com.ruoyi.system.mapper;

import java.util.List;

import com.ruoyi.system.domain.Department;
import com.ruoyi.system.domain.vo.DoctorScheduleVO;
import org.apache.ibatis.annotations.Param;

/**
 * 医生排班Mapper接口
 *
 * @author ruoyi
 * @date 2025-05-09
 */
public interface DoctorScheduleMapper {

    DoctorScheduleVO selectDoctorScheduleById(@Param("id") Long id);

    int insertDoctorSchedule(DoctorScheduleVO doctorScheduleVO);

    int updateDoctorSchedule(DoctorScheduleVO doctorScheduleVO);

    int deleteDoctorScheduleById(@Param("id") Long id);

    DoctorScheduleVO getDoctorScheduleDetail(@Param("doctorId") Long doctorId,
                                             @Param("date") String date,
                                             @Param("period") String period);

    List<DoctorScheduleVO> selectDoctorScheduleByWeek(@Param("departmentId") Integer departmentId,
                                                      @Param("patientName") String patientName,
                                                      @Param("weekStart") String weekStart,
                                                      @Param("weekEnd") String weekEnd);

    List<Department> selectAll();
}


